package com.ruoyi.goods.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 商品对象 goods
 * 
 * @author ruoyi
 * @date 2023-11-27
 */
public class Goods extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品编号 */
    private Long gId;

    /** 商品名字 */
    @Excel(name = "商品名字")
    private String gName;

    /** 商品类型 */
    @Excel(name = "商品类型")
    private String gType;

    /** 进价 */
    @Excel(name = "进价")
    private BigDecimal gPurchasingprice;

    /** 售价 */
    @Excel(name = "售价")
    private BigDecimal gPrice;

    /** 保质期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "保质期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date gShelfLife;

    /** 商品数量 */
    @Excel(name = "商品数量")
    private Long gNumber;

    /** 商品图片 */
    @Excel(name = "商品图片")
    private String gImg;

    /** 商品状态 */
    @Excel(name = "商品状态")
    private String gStatus;

    /** 乐观锁 */
    @Excel(name = "乐观锁")
    private Long version;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 逻辑删除 */
    @Excel(name = "逻辑删除")
    private Long isDelete;

    /** 供应商名字 */
    @Excel(name = "供应商名字")
    private String pName;


    public Goods(Long gId, String gName, String gType, BigDecimal gPurchasingprice, BigDecimal gPrice, Date gShelfLife, Long gNumber, String gImg, String gStatus, Long version, Date createDate, Long isDelete, String pName) {
        this.gId = gId;
        this.gName = gName;
        this.gType = gType;
        this.gPurchasingprice = gPurchasingprice;
        this.gPrice = gPrice;
        this.gShelfLife = gShelfLife;
        this.gNumber = gNumber;
        this.gImg = gImg;
        this.gStatus = gStatus;
        this.version = version;
        this.createDate = createDate;
        this.isDelete = isDelete;
        this.pName = pName;
    }

    public void setgId(Long gId)
    {
        this.gId = gId;
    }

    public Long getgId() 
    {
        return gId;
    }
    public void setgName(String gName) 
    {
        this.gName = gName;
    }

    public String getgName() 
    {
        return gName;
    }
    public void setgType(String gType) 
    {
        this.gType = gType;
    }

    public String getgType() 
    {
        return gType;
    }
    public void setgPurchasingprice(BigDecimal gPurchasingprice) 
    {
        this.gPurchasingprice = gPurchasingprice;
    }

    public BigDecimal getgPurchasingprice() 
    {
        return gPurchasingprice;
    }
    public void setgPrice(BigDecimal gPrice) 
    {
        this.gPrice = gPrice;
    }

    public BigDecimal getgPrice() 
    {
        return gPrice;
    }
    public void setgShelfLife(Date gShelfLife) 
    {
        this.gShelfLife = gShelfLife;
    }

    public Date getgShelfLife() 
    {
        return gShelfLife;
    }
    public void setgNumber(Long gNumber) 
    {
        this.gNumber = gNumber;
    }

    public Long getgNumber() 
    {
        return gNumber;
    }
    public void setgImg(String gImg) 
    {
        this.gImg = gImg;
    }

    public String getgImg() 
    {
        return gImg;
    }
    public void setgStatus(String gStatus) 
    {
        this.gStatus = gStatus;
    }

    public String getgStatus() 
    {
        return gStatus;
    }
    public void setVersion(Long version) 
    {
        this.version = version;
    }

    public Long getVersion() 
    {
        return version;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setIsDelete(Long isDelete) 
    {
        this.isDelete = isDelete;
    }

    public Long getIsDelete() 
    {
        return isDelete;
    }
    public void setpName(String pName) 
    {
        this.pName = pName;
    }

    public String getpName() 
    {
        return pName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("gId", getgId())
            .append("gName", getgName())
            .append("gType", getgType())
            .append("gPurchasingprice", getgPurchasingprice())
            .append("gPrice", getgPrice())
            .append("gShelfLife", getgShelfLife())
            .append("gNumber", getgNumber())
            .append("gImg", getgImg())
            .append("gStatus", getgStatus())
            .append("version", getVersion())
            .append("createBy", getCreateBy())
            .append("createDate", getCreateDate())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("isDelete", getIsDelete())
            .append("pName", getpName())
            .toString();
    }
}
